package com.geline.easyexcel.annotation;

import com.geline.easyexcel.domain.DropDownType;

import java.lang.annotation.*;

/**
 * 标注导出的列为下拉框类型，并为下拉框设置内容
 *
 * @author: mengxin
 * @date: 2024/1/4 16:59
 */
@Documented
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.FIELD)
public @interface ExcelDropDown {

    //下拉类型(普通下拉，级联下拉，多选下拉)
    DropDownType type() default DropDownType.SELECT;

    //列坐标
    int index();

    //级联父列坐标
    int parentIndex() default -1;

    //字典名称
    String dictName();

    //字典类型代码，配置了items，也需要加上，用于生成Excel名称管理器key
    String dictCode();

    //静态下拉内容
    String[] items() default {};

    //层级
    int dictLevel() default 1;

    //字典写入标签页名称
    String dictSheet() default "DS1";

    //设置下拉框的起始行，默认为第二行
    int firstRow() default 1;

    //设置下拉框的结束行，默认为最后一行
    int lastRow() default 0x10000;

}
